package zhihuilan.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import zhihuilan.dto.MyStaffShopDto;
import zhihuilan.dto.WxMiniPageDto;
import zhihuilan.entity.MyStaffShop;
import zhihuilan.params.query.MyStaffShopQueryParam;

import java.util.List;

/**
 * 附近店铺管理 服务层
 * 
 * @author chenk
 * @Date 2025年2月19日 12:39:03
 */
public interface MyStaffShopService
{
    /**
     * 分页查询附近店铺列表；
     *
     * @param queryParam 查询类MyStaffShopQueryParam；
     * @return 用户信息分页集合 Page<MyStaffShop>
     */
    Page<MyStaffShop> selectPageList(MyStaffShopQueryParam queryParam);

    /**
     * 分页查询附近店铺列表,该接口会附带查询3个推荐商品；
     *
     * @param queryParam 查询类MyStaffShopQueryParam；
     * @return 用户信息分页集合 Page<MyStaffShop>
     */
    WxMiniPageDto<MyStaffShopDto> selectPageAndGoodsList(MyStaffShopQueryParam queryParam);

    List<MyStaffShopDto> selectList(MyStaffShopQueryParam queryParam);

    /**
     * 根据主键获取详情；
     * */
    MyStaffShop selectById(Integer id);

    MyStaffShop selectOne(MyStaffShopQueryParam queryParam);

    /**
     * 根据主键获取详情；
     * */
    MyStaffShopDto selectById(MyStaffShopQueryParam queryParam);

    /**
     * 新增；
     * */
    MyStaffShop addEntity(MyStaffShop saveEntity);

    /**
     * 新增信息并写入查询表；
     * */
    MyStaffShop addEntityAndSearch(MyStaffShop saveEntity);

    /**
     * 更新信息；
     * */
    MyStaffShop updateEntity(MyStaffShop saveEntity);

    /**
     * 更新信息；并更新查询表；
     * */
    MyStaffShop updateEntityAndSearch(MyStaffShop saveEntity);

    /**
     * 根据ID删除信息；
     * */
    Boolean deleteById(Integer id);

    /**
     * 根据ID删除信息；并更新查询表；
     * */
    Boolean deleteByIdAndSearch(Integer id);

}
